import axios from 'axios'
import nprogress from 'nprogress'
//引入css文件
import 'nprogress/nprogress.css'
//创建实例
const requests = axios.create({
  //配置baseurl,没写服务器地址默认本机地址拼接/api，需要在解决跨域中配置服务器地址
  baseURL: '/api', 
  timeout:5000 //响应超时时间
})
//请求拦截器：发送请求前可以检测到，可以再请求发出前做一些事情
requests.interceptors.request.use((config) => {
  //如果本地存储有 uuidtoekn 那么就把token添加到请求头的usertempid中
  if (localStorage.getItem('UUIDTOKEN')) {
    //这个字段是后端提供的
    config.headers.userTempId = localStorage.getItem('UUIDTOKEN')
  }
  if (localStorage.getItem('TOKEN')) {
    config.headers.token = localStorage.getItem('TOKEN')
  }
  //开始动画
  nprogress.start()
  return config
})

//响应拦截器
requests.interceptors.response.use((response) => {
  //成功的回调函数，可以对返回的数据做一些事情
  nprogress.done()//结束动画
  return response.data
}, (error) => {
  //响应失败的回调函数
  
  return Promise.reject(new Error('fail'))
})  
//导出实例
export default requests;